export default {
    install(Vue) {
        //  定义全局过滤器
        Vue.filter('mySlice', function (value) {
            return value.slice(0, 4);
        })

        // 设置全局的自定义指令
        Vue.directive('fbind', {
            //指令与元素成功绑定时（初始化,一上来）
            bind(element, binding) {
                //  注意此处的 this 是 window 对象
                console.log('bind', this);
                element.value = binding.value;
            },
            //  指令所在元素被插入页面时被调用
            inserted(element, binding) {
                console.log('inserted');
                element.focus();

            },
            //指令所在的模板重新解析时
            update(element, binding) {
                console.log('update');
                element.value = binding.value;
                element.focus();

            }
        });
        //  定义混合
        Vue.mixin({
            data() {
                return {
                    x: 1,
                    y: 100
                }
            }
        })
        // 给 Vue 原型上定义一个 hello 方法
        Vue.prototype.hello = () => {
            alert("Hello World");
        }
    }
};